
#include <iostream>
#include "errorUtils.h"
#include "socketSrv.h"
#include "processoCli.h"


int main() {
	//Flag servidor activo
	int flagActivo = 1;
	//Tarefas para os clientes

	int newsocket;
	int pid;
	SocketSrv *socketsrv;
	ProcessoCli *newCli;

	//Inicar socket
	socketsrv = new SocketSrv(6001);
	//Receber ligacoes de clientes
	while(flagActivo){
		newsocket = socketsrv->acceptCon ();
		//Cria processo de escuta

		switch( (pid=fork()) ) {
			case -1:
				FatalErrorSystem("Erro ao criar o fork.\n");
				exit(-1);
				break;
			case 0:
				socketsrv->closeSocket();
				delete socketsrv;
				newCli = new ProcessoCli(newsocket);
				printf("Sair pelo main");
				exit(0);
				break;
		}
		close(newsocket);
	}

	socketsrv->closeSocket();
	return 0;
}
